// The solution contains two types of messages. Messages with Severity = Informational are used for various notices, UI labels, captions, etc.
// Messages with Severity = Error are used for error reporting strings.
// Common strings
//
//  Values are 32 bit values laid out as follows:
//
//   3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1
//   1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
//  +---+-+-+-----------------------+-------------------------------+
//  |Sev|C|R|     Facility          |               Code            |
//  +---+-+-+-----------------------+-------------------------------+
//
//  where
//
//      Sev - is the severity code
//
//          00 - Success
//          01 - Informational
//          10 - Warning
//          11 - Error
//
//      C - is the Customer code flag
//
//      R - is a reserved bit
//
//      Facility - is the facility code
//
//      Code - is the facility's status code
//
//
// Define the facility codes
//


//
// Define the severity codes
//


//
// MessageId: MSG_L_ALL_APPLICATIONS_NAME
//
// MessageText:
//
// All Applications
//
#define MSG_L_ALL_APPLICATIONS_NAME      0x40000001L

//
// MessageId: MSG_L_UNREGISTERED_APPLICATIONS_NAME
//
// MessageText:
//
// Unregistered Applications
//
#define MSG_L_UNREGISTERED_APPLICATIONS_NAME 0x40000002L

//
// MessageId: MSG_L_ALL_MODES_NAME
//
// MessageText:
//
// All Modes
//
#define MSG_L_ALL_MODES_NAME             0x40000003L

//
// MessageId: MSG_L_LOW_LEVEL_KEYBOARD_NAME
//
// MessageText:
//
// Low Level Keyboard
//
#define MSG_L_LOW_LEVEL_KEYBOARD_NAME    0x40000004L

//
// MessageId: MSG_L_ALL_KEYBOARDS_NAME
//
// MessageText:
//
// All Keyboards
//
#define MSG_L_ALL_KEYBOARDS_NAME         0x40000005L

//
// MessageId: MSG_L_UNREGISTERED_KEYBOARDS_NAME
//
// MessageText:
//
// Unregistered Keyboards
//
#define MSG_L_UNREGISTERED_KEYBOARDS_NAME 0x40000006L

//
// MessageId: MSG_L_LANGUAGE_ENGLISH_NAME
//
// MessageText:
//
// English (EN)
//
#define MSG_L_LANGUAGE_ENGLISH_NAME      0x40000007L

//
// MessageId: MSG_L_LANGUAGE_CZECH_NAME
//
// MessageText:
//
// Czech (CS)
//
#define MSG_L_LANGUAGE_CZECH_NAME        0x40000008L

//
// MessageId: MSG_L_LITEKEYS_VERSION
//
// MessageText:
//
// Version %1
//
#define MSG_L_LITEKEYS_VERSION           0x40000009L

// Common error reporting messages
//
// MessageId: MSG_E_INIT_COM
//
// MessageText:
//
// The system failed to initialize the COM library for the %1.
// Try to restart the %1 or reboot the system.
//
#define MSG_E_INIT_COM                   0xC0000001L

//
// MessageId: MSG_E_OPEN_USERS_GUIDE
//
// MessageText:
//
// Failed to open the LiteKeys User's Guide (the file "%1" might be missing or inaccessible, or the default browser couldn't be opened).
//
#define MSG_E_OPEN_USERS_GUIDE           0xC0000002L

// XML error reporting messages
//
// MessageId: MSG_E_XML_FILE_NOT_FOUND
//
// MessageText:
//
// The settings file "%1" wasn't found (or could not be opened).
//
#define MSG_E_XML_FILE_NOT_FOUND         0xC0000003L

//
// MessageId: MSG_E_XML_SYSTEM
//
// MessageText:
//
// The settings file "%1" couldn't be loaded due to a system error (either there was some I/O error or the system run out of memory).
//
#define MSG_E_XML_SYSTEM                 0xC0000004L

//
// MessageId: MSG_E_XML_PARSING
//
// MessageText:
//
// The settings file "%1" couldn't be loaded due to a XML parsing error. Offset of the last parsed character is: %2!u!.
//
#define MSG_E_XML_PARSING                0xC0000005L

//
// MessageId: MSG_E_XML_REPORT_HEADER
//
// MessageText:
//
// The settings file "%1" contains the following errors:
//
#define MSG_E_XML_REPORT_HEADER          0xC0000006L

//
// MessageId: MSG_E_XML_NODE_MISSING
//
// MessageText:
//
// The mandatory element <%1> wasn't found.
//
#define MSG_E_XML_NODE_MISSING           0xC0000007L

//
// MessageId: MSG_E_XML_NODE_MISSING_WITH_OFFSET
//
// MessageText:
//
// The mandatory element <%1> wasn't found.
// Last marked character offset: %2!u!.
//
#define MSG_E_XML_NODE_MISSING_WITH_OFFSET 0xC0000008L

//
// MessageId: MSG_E_XML_VERSION_MISMATCH
//
// MessageText:
//
// The version of the settings file differs from the version of the currently running LiteKeys (version of the file is: "%1", running version is: "%2").
// This might have caused the settings loading errors.
//
#define MSG_E_XML_VERSION_MISMATCH       0xC0000009L

//
// MessageId: MSG_E_XML_INVALID_VALUE
//
// MessageText:
//
// The element <%1> wasn't found or it had an unacceptable value.
// The value specified in the file was: "%2".
// Last marked character offset: %3!u!.
//
#define MSG_E_XML_INVALID_VALUE          0xC000000AL

//
// MessageId: MSG_E_XML_INVALID_IDENTIFIER
//
// MessageText:
//
// The element <%1> had the identification attribute "%2" with an unacceptable value.
// The indentifier value specified in the file was: "%3".
// Last marked character offset: %4!u!.
//
#define MSG_E_XML_INVALID_IDENTIFIER     0xC000000BL

//
// MessageId: MSG_E_XML_DUPLICATE_VALUE
//
// MessageText:
//
// The element <%1> couldn't properly create its record, because a record identified with the specified value had already existed.
// The identifying value specified in the file was: <%2> "%3".
// Last marked character offset: %4!u!.
//
#define MSG_E_XML_DUPLICATE_VALUE        0xC000000CL

//
// MessageId: MSG_E_XML_KEYBOARDS_LIMIT
//
// MessageText:
//
// The number of registered Keyboards has already reached the limit and therefore no more Keyboards can be loaded.
// Last marked character offset: %1!u!.
//
#define MSG_E_XML_KEYBOARDS_LIMIT        0xC000000DL

//
// MessageId: MSG_E_XML_DUPLICATE_KEY_PROCESSING_VALUE
//
// MessageText:
//
// The element <%1> couldn't properly create its record, because a record identified with the specified value had already existed, or the Key had already assigned different type of Blocking.
// The identifying values specified in the file were: <%2> "%3", <%4> "%5", <%6> "%7".
// Last marked character offset: %8!u!.
//
#define MSG_E_XML_DUPLICATE_KEY_PROCESSING_VALUE 0xC000000EL

//
// MessageId: MSG_E_XML_CONFLICTING_HOTKEY_SETTINGS
//
// MessageText:
//
// The element <%1> couldn't properly create its record, because the record conflicted with another setting (either the Key had been set to be completely blocked, or it had been registered for incompatible Low Level / standard Keyboard).
// The record identifying values in the file were: <%2 "%3">, <%4 "%5">, <%6 "%7">, <%8 "%9">.
// Last marked character offset: %10!u!.
//
#define MSG_E_XML_CONFLICTING_HOTKEY_SETTINGS 0xC000000FL

//
// MessageId: MSG_E_XML_DUPLICATE_HOTKEY_RECORD
//
// MessageText:
//
// The element <%1> couldn't properly create its record, because a conflicting record for the given setup had been already created (and its <%2> didn't match).
// The record identifying values in the file were: <%3 "%4">, <%5 "%6">, <%7 "%8">, <%9 "%10">.
// Last marked character offset: %11!u!.
//
#define MSG_E_XML_DUPLICATE_HOTKEY_RECORD 0xC0000010L

//
// MessageId: MSG_E_XML_DUPLICATE_ACTION_SEQUENCE
//
// MessageText:
//
// The element <%1> couldn't properly create its record, because a record conflicting with the given setup had been already created (either <%8> had had a record for the same Modifiers, or it had been ignoring Modifiers).
// The record identifying values in the file were: <%2 "%3">, <%4 "%5">, <%6 "%7">, <%8 "%9">, <%10 "%11">.
// Last marked character offset: %12!u!.
//
#define MSG_E_XML_DUPLICATE_ACTION_SEQUENCE 0xC0000011L

